package demo;

public class Solution {
    public int removeDuplicates(int[] nums) {
        //若数组长度为0，返回0
        if(nums.length==0){
            return 0;
        }
        //长度为1也直接返回
        if(nums.length==1){
            return 1;
        }
        // 长度为2以上
        int fast=1;int slow=1;
        while(fast<nums.length){
            //若快指针遍历到的元素不等于前一个元素，保存到新数组，长度加一
            if(nums[fast]!=nums[fast-1]){
                nums[slow]=nums[fast];
                //找到一个新数组长度也加一
                slow=slow+1;
            }
            //快指针遍历数组
            fast=fast+1;
        }
        return slow;
    }
}

